package com.dian.api.inv.result;

import com.dian.common.validator.group.AddGroup;
import com.dian.common.validator.group.UpdateGroup;
import com.dian.modules.enums.inv.GoodsStock_ItemGradeEnum;
import com.gitee.easyopen.doc.annotation.ApiDocField;
import com.thoughtworks.xstream.annotations.XStreamAlias;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

@Data
@XStreamAlias("goodsQty")
public class GoodsQtyResult {

    /**
     * 商品分类id;来源于base_class.id
     */
    @ApiDocField(description = " 商品分类id")
    private Long classId;



    /**
     * 商品分类名称;来源于base_class.class_name
     */
    @ApiDocField(description = "商品分类名称")
    private String className;



    /**
     * 商品id;来源于base_goods.id
     */
    @ApiDocField(description = "商品id")
    private Long goodsId;



    /**
     * 商品编码;来源于base_goods.goods_code
     */
    @ApiDocField(description = "商品编码")
    private String goodsCode;



    /**
     * 商品名称;来源于base_goods.name
     */
    @ApiDocField(description = "商品名称")
    private String goodsName;



    /**
     * 商品型号;来源于base_goods.goods_model
     */
    @ApiDocField(description = "商品型号")
    private String goodsModel;



    /**
     * 商品规格;来源于base_goods.goods_space
     */
    @ApiDocField(description = "商品规格")
    private String goodsSpec;



    /**
     * 基础数量
     */
    @ApiDocField(description = "基础数量")
    private BigDecimal baseNum;





    /**
     * 基础单位;来源于base_uom.name_name
     */
    @ApiDocField(description = "基础单位")
    private String baseUomName;



    /**
     * 库存数量
     */
    @ApiDocField(description = "库存数量")
    private BigDecimal qtyNum;







    /**
     * 计量单位;来源于base_uom.name_name
     */
    @ApiDocField(description = "库存计量单位")
    private String qtyUomName;



    /**
     * 辅助数量
     */
    @ApiDocField(description = "辅助数量")
    private BigDecimal auxNum;






    /**
     * 计量单位;来源于base_uom.name_name
     */
    @ApiDocField(description = "辅助计量单位")
    private String auxUomName;



    /**
     * 可用基础数量
     */
    @ApiDocField(description = "可用基础数量")
    private BigDecimal avaBaseNum;



    /**
     * 可用库存数量
     */
    @ApiDocField(description = "可用库存数量")
    private BigDecimal avaQtyNum;



    /**
     * 可用辅助数量
     */
    @ApiDocField(description = "可用辅助数量")
    private BigDecimal avaAuxNum;



    /**
     * 色号
     */
    @ApiDocField(description = "色号")
    private String colorNumber;



    /**
     * 商品等级:1-优等品-excell;2-一等品-first
     */
    @ApiDocField(description = "商品等级", enumClass = GoodsStock_ItemGradeEnum.class)
    private String itemGrade;





    /**
     * 仓库编码;来源于Base_Warehouse.Warehouse_Code
     */
    @ApiDocField(description = "仓库编码")
    private String warehouseCode;



    /**
     * 仓库名称;来源于Base_Warehouse.Warehouse_Name
     */
    @ApiDocField(description = "仓库名称")
    private String warehouseName;

    /**
     * 换算单位1
     */
    @ApiDocField(description = "换算单位1")
    private BigDecimal converUnit1;
    /**
     * 换算单位2
     */
    @ApiDocField(description = "换算单位2")
    private BigDecimal converUnit2;

}
